energy gas uml acoustic power c++ project management use cases consulting electrical business analysis electric java j2ee olap solar extreme programming